﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.IO;

namespace EssenceAnalytics.Core.Interfaces
{
    public interface ICrudService<T>
    {
        int Create(T e);
        void Save();
        void Delete(int id);
        T Get(int id);
        IEnumerable<T> GetAll();
        IEnumerable<T> Where(Expression<Func<T, bool>> func, bool showDeleted = false);
        void Restore(int id);
    }

    //public interface IUserService : ICrudService<User>
    //{
    //    bool IsUnique(string login);
    //    void ChangePassword(int id, string password);
    //    User Get(string Login, string password);
    //}
}